<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<body bgcolor="white">

The inference rules and control functions

<h2>Package Specification</h2>

Every task is processed in two stages:
<ol>
<li>Direct processing by matching, in the concept corresponding to the content, in one step. It happens when the task is inserted into memory.</li>
<li>Indirect processing by reasoning, in related concepts and unlimited steps. It happens in each inference cycle.</li>
</ol>
The transmission from (1) to (2) corresponds to "decision making".
<p>
Inference between premises with no shared term can only happen in task buffer, between tasks based on common evidence.
<p>
In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out:
<ul>
<li>revision: between judgments on non-overlapping evidence</li>
<li>update: between judgments</li>
<li>satisfy: between a Judgment and a Question/Goal</li>
<li>merge: between items of the same type and base</li>
</ul>
<p>
In reasoning, there are two basic types:
<ol>
<li>Between a Task and a TermLink (syntatic information)</li>
<li>Between a Task and a Belief obtained by following a TermLink (semantic information).</li>
</ol>
In each case, there may be multiple applicable rules, which will be applied in parallel. For each rule, each conclusion is formed in three stages, to determine (1) the content (as a Term), (2) the truth-value or desire-value, and (3) the budget-value, in that order.
<p>
In the system, forward inference (the task is a Judgment) and backward inference (the task is a Question or Goal) are mostly isomorphic to each other, so that the inference rules produce clonclusions with the same content for different types of tasks. However, there are exceptions. For example, backward inference does not generate more complex terms.
</body>
</html>
